دسته بندی ها
08:34 1398/07/04

تفاوت های Asp.net core و Asp.net mvc چیه؟

مشخصات سوال کننده :
کاربر : fateme     امتیاز کاربر : 1635     رتبه کاربر : 2
دسته بندی : Asp.net Mvc Asp.net Core

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 2968
هوش مصنوعی

پاسخ هوش مصنوعی

ASP.NET Core و ASP.NET MVC دو فریم ورک مختلف برای توسعه وب هستند. در اینجا به برخی از تفاوت های کلیدی بین این دو فریم ورک اشاره می کنیم:

  • پلتفرم: ASP.NET Core یک فریم ورک چند پلتفرمی است که می تواند بر روی ویندوز، لینوکس و مک اجرا شود، در حالی که ASP.NET MVC محدود به ویندوز است.
  • مدیریت وابستگی: ASP.NET Core دارای سیستم مدیریت وابستگی داخلی است که به شما اجازه می دهد خدمات مورد نیاز خود را به راحتی در تمام پروژه های خود ثبت و استفاده کنید.
  • عملکرد: ASP.NET Core به دلیل طراحی بهینه تری که دارد، معمولاً عملکرد بهتری نسبت به ASP.NET MVC ارایه می دهد.
  • پشتیبانی از میانی افزار: ASP.NET Core از میانی افزار پشتیبانی می کند که امکان افزودن و سفارشی سازی لایه های مختلف در pipeline درخواست را فراهم می کند.
  • ساختار پروژه: در ASP.NET Core، ساختار پروژه ساده تر و مدرن تر است و از فایل های JSON برای پیکربندی استفاده می کند در حالی که ASP.NET MVC به فایل های XML وابسته است.
  • پشتیبانی از ویژگی های جدید: ASP.NET Core به طور مداوم به روز رسانی می شود و ویژگی های جدیدی مانند Razor Pages، Web API و موارد دیگر را شامل می شود، در حالی که ASP.NET MVC نسبت به ویژگی های جدید به روز نیست.

این تفاوت ها باعث می شود که ASP.NET Core گزینه بهتری برای پروژه های جدید باشد، به ویژه اگر به دنبال عملکرد بالا و قابلیت های چند پلتفرمی هستید.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : hamdola 23:24 1398/07/26

در مورد این تفاوت ها می تونید توی این لینک اطلاعات کاملی رو بدست بیارید.

موفق باشید

به این پاسخ امتیاز بدهید    0
امتیاز: 121 رتبه: 12
پاسخ دهنده : hosein_azm 23:24 1398/07/26

سلام تفاوت های زیادی دارن ... چندتا ک ب ذهنم میرسه 

1- اگه پروژه شما از نوع mvc  باشه برای اجرا کردن اون نیاز به  iis  دارید ولی اگه پروژه از نوع core  باشه دگ نیازی به iis نیست

2- اگر شما ی گروژه از نوع core ایجاد کنید یه قسمت میبینید به نام wwwroot  که در اون قسمت فایل های استاتیک نگهداری میشن ولی پروژه هایی از نوع mvc این فابلیت رو نداشتن

3- در core برای اضافه کردن هز پکیج و یا کتابخونه ای فقط کافیه اون رو بصورت nuget وارد کنید و دگ نیازی به فایلهای dll  نیست

 

4- در نهایت با تلفیق asp mvc + web api +web page  تکنولوژی asp.net core  بوجود اومده - با ایجاد یه پروژه جدید میتونید این مورد رو متوجه بشید

به این پاسخ امتیاز بدهید    3
امتیاز: 46 رتبه: 18
پاسخ دهنده : mohammad-i 23:24 1398/07/26

چیزی که خیلی به چشم من اومد و کار رو راحت تر کرده اینه که دیگه نیازی به کد نویسی جدا واسه API نیست. با یه تیر دو نشون میشه زد.

به این پاسخ امتیاز بدهید    1
امتیاز: 260 رتبه: 7
پاسخ دهنده : hamid_b 14:23 1398/08/10

سلام

به صورت کلی میشه به موارد زیر اشاره کرد

  • تفاوت اول بین Asp.net Core و Asp.net Mvc ادغام Web Api ها با Mvc و  web Page می باشد.
  • تفاوت دوم این می باشد که در Asp.net Mvc جهت اجرای پروژه حتما نیاز به IIS می باشد.
  • تفاوت سوم در Asp.Net Core در این می باشد که توسط کلاسی به نام IServiceProvider می توان به صورت مستقیم در سازنده یا Constructor هر کلاس تزریق وابستگی را انجام داد. 
  • در تکنولوزی Core بسیاری از فایل ها و فولدرهای مهم و پرکاربرد در Asp.net Mvc حذف شده است.از جمله مهم ترین این موارد فایل web.config می باشد که فقط در نسخه پابلیش شده موجود می باشد.
  • تفاوت پنجم این می باشد که در Asp.net core مسیری جهت نگهداری فایلهای ثابت یا static پروژه به وجود آمده است به نام wwwroot که این محل در Asp.net Mvc وجود نداشت.
  • تفاوت ششم که یکی از قابلیتهای بسیار مفید و مورد استقبال برنامه نویسان می باشد عدم نیاز به Complie پروژه جهت مشاهده خروجی می باشد.

  • تفاوت هفتم فایل Project.json می باشد که به راحتی وابستگی های پروژه ، نحوه Build شدن، نحوه اجرا شدن پروژه و تنظیمات پابلیش شدن پروژه را درون خود نگهداری می کند.
  • تفاوت هشتم معرفی قابلیت _ViewImport ها می باشد.

البته تفاوتهای دیگه ای هم هست که مهم ترین ها اینا بودن.

به این پاسخ امتیاز بدهید    1
امتیاز: 518 رتبه: 4
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود